package com.hbx.platform.base.mapper;

import com.hbx.platform.base.query.BaseQuery;
import com.hbx.platform.org.domain.Department;
import com.hbx.platform.org.query.DepartmentQuery;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author: hbx
 * @date: 2024/04/06
 **/
public interface BaseMapper<T> {

    List<T> getAll();

    T queryById(Long id);

    void update(T t);

    void save(T t);

    void delete(Long id);

    Integer getCount(BaseQuery query);

    List<T> page(BaseQuery query);

    Integer batchDelete(@Param("ids") List<Long> ids);
}
